Since the widespread acceptance and use of the World Wide Web, software vendors have designed and developed software tools to allow computer users to author and publish web pages and web sites. These tools are sometimes conventionally referred to as “web publishing tools” or “web publishing applications.”
In the conventional art, a sophisticated computer user typically uses a sophisticated web publishing application to design and publish a web page or web site. The skilled user is able to create web files, such as HTML files, which specify the design parameters of the web page. Once the user is ready to publish the web site on the Internet, the user manually selects and then uploads the web files to the web server, typically over a high speed network connection. If the user needs to revise the design or the content of the web site, the user simply revises the one or more web files affected by the revisions and uploads the modified web files to the web server.
Alternatively, if the sophisticated computer user needs to revise the web site, he or she may opt to edit certain web files directly on a server. In other words, the user identifies and selects which files need to be modified to effect the desired change, and edits the files directly on the server. However, there are several drawbacks to this approach. First, the user must identify which files must be modified to effect the desired change to the web site. While this may not be a difficult task for a skilled web site designer, it would be very difficult for an unsophisticated computer user to perform successfully. Additionally, if the one or more servers that stores the files is unavailable, the user will not be able to modify the files.
A less sophisticated computer user typically uses a basic web publishing application, such as a word processing application, that does not require him to know a programming language, such as HTML, in order to create a web page. For example, the user may use a basic web publishing application that allows the user to use design tools, such as wizards, design sets, or templates, to create a web site quickly and easily. Additionally, the user may use a word processing application to save a word processing document as a web file, such as an HTML file. Once the user is ready to publish the web site to the Internet, the web publishing application (or word processing application) automatically generates or creates the web files (such as HTML files) that are necessary to publish the web site.
The web publishing application then uploads the generated web files to the web server, typically over a low speed network connection (such as a dialup connection). If the user wants to revise the design or the content of the web site, the user simply revises and saves the document created in the web publishing application. Once the user is ready to publish the modified web site on the Internet, the web publishing application generates the web files for the web site and then typically uploads the generated web files to the web server.
One significant drawback to conventional basic web publishing applications, however, is that each time a user modifies the content or design of a web site, the web publishing application re-generates and uploads all of the web files for the web site, regardless of whether the web files were affected by the user's modifications. While this approach is a reliable way to ensure that all modified files are properly uploaded, if the web site comprises both text and images, the time it takes to upload the web files over the low-speed network connection can be significant.
Consequently, there is a need in the art for a system and method that allows an unskilled user to publish a modified web site to the Internet reliably and efficiently. Additionally, there is a need in the art for a system and method for automatically identifying which web files have been modified as a result of revisions made by a user to the design or content of a web site. Finally, there is a need in the art for a system and method for uploading modified web files to a web server without requiring the user to identify which web files have been modified.